<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>数组</title>
    <script>
        // 定义长度为0得数组
        let arr = new Array();
        let array1 = []; //两个等价

        array1[0]=8;
        array1[1] =9;
        // 给第七个下标赋值 数组长度变为7
        array1[6]=7;
        // alert(array1[1]+"    "+array1[4]);//结果为9  undefined
        //定义有初始值得数组
        let array2 = [3,2,5,73,23,236];
        //遍历
        for (let i=0;i<array2.length;i++){
            // alert(array2[i]);
        }
        //push 在集合尾部追加元素
        array2.push("wenlinhui");
        //删除指定下标元素  第一个参数为删除下标 第二个参数为从下标开始要删除得个数
        // array2.splice(3,2);
        //在下标为2的位置，插入元素,0表示删除0个元素
        array2.splice(2,0,34,44);
        //在下标为2的位置，删除后面两个元素，添加一个“我加入”
        array2.splice(2,2,"我加入");

        //遍历 k表示数组元素，  index为循环索引
        array2.forEach((k,index) => console.log(k+"       下标："+index));

        // 创建一个数组
        let manArray = [
            {code:"002",name:"吴军",money:3000},
            {code:"004",name:"小刘",money:5000},
            {code:"007",name:"唐艺昕",money:7000},
            {code:"001",name:"刘亦菲",money:4000},
            {code:"009",name:"伊涵",money:2000}
        ];
        //元素的查找
        //找到刘亦菲对应的下标,没找打返回-1
        let index  = manArray.findIndex(n => n.name==="刘亦菲");
        // alert("刘亦菲的下标"+index);  // 输出3
        //将一个manObj对象转化为json格式的字符串
        let manObj = manArray.find(m => m.name="伊涵");
        // alert(manObj+"    "+JSON.stringify(manObj));
        //筛选工资在4000以上的公民
        let salaryArray = manArray.filter(s => s.money>4000);
        salaryArray.forEach(p => console.log("工资筛选  "+JSON.stringify(p)));
        //筛选名字中包含刘的元素
        let containName = manArray.filter(n => n.name.indexOf("刘") !== -1);
        containName.forEach(c => console.log(" 名字筛选    "+JSON.stringify(c)));
        //排序 升序
        manArray.sort((n1,n2) => n1.money - n2.money);
        manArray.forEach(man => console.log("排序后的数组    "+JSON.stringify(man)));
    </script>

</head>
<body>

</body>
</html>